package uk.co.g4me.frameworks.spring.roo.addons.shiro;

import org.springframework.roo.model.JavaPackage;
import org.springframework.roo.project.maven.Pom;



/**
 * Interface of operations this add-on offers. Typically used by a command type or an external add-on.
 *
 * @since 1.1
 */
public interface ShiroOperations {

    /**
     * Indicate commands should be available
     * 
     * @return true if it should be available, otherwise false
     */
    boolean isSetupCommandAvailable();
    
    /**
     * Setup all add-on artifacts (dependencies in this case)
     */
    void setup(Pom entityModule, Pom webModule, String entityPackage, String controllerPackage);
}